package cn.iocoder.yudao.module.exam.controller.admin.paperquestion.vo;

import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 试卷试题分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PaperQuestionPageReqVO extends PageParam {

    @Schema(description = "试卷id", example = "27771")
    private Long paperId;

    @Schema(description = "题目id", example = "20332")
    private Long questionId;

    @Schema(description = "排序")
    private Integer sortNo;

    @Schema(description = "题目文本")
    private String questionText;

    @Schema(description = "题目类型 [	  {text: '单选', value: 1,},	  {text: '多选', value: 2,},	  {text: '判断', value: 3,},	  {text: '填空', value: 4,},	  {text: '简答', value: 5,},	  {text: '问答', value: 6,},	  {text: '计算', value: 7,}	]", example = "2")
    private Integer questionType;

    @Schema(description = "题目难度级别 ['1简单', '2一般', '3中等', '4困难', '5极难']")
    private Integer difficultyLevel;

    @Schema(description = "题目链接", example = "https://www.iocoder.cn")
    private String questionUrl;

    @Schema(description = "分值")
    private BigDecimal questionScore;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "版本号")
    private Integer version;

    @Schema(description = "题库id", example = "1726")
    private Integer bankId;

    @Schema(description = "0 错误 1 正确")
    private Boolean corrected;

    @Schema(description = "答案关键字")
    private String answerKey;

    @Schema(description = "答案地址", example = "https://www.iocoder.cn")
    private String answerUrl;

    @Schema(description = "解析")
    private String analysis;

    @Schema(description = "解析地址", example = "https://www.iocoder.cn")
    private String analysisUrl;

}